# -*- coding: utf-8 -*-

[workspace]
members = [
    "letmein",
    "letmein-conf",
    "letmein-fwproto",
    "letmein-proto",
    "letmein-seccomp",
    "letmein-systemd",
    "letmeind",
    "letmeinfwd",
    "tests/stubs/nft",
]
resolver = "2"

[workspace.package]
version = "9.0.0"
edition = "2021"
rust-version = "1.75.0"
license = "MIT OR Apache-2.0"
authors = [ "Michael Büsch <m@bues.ch>" ]
homepage = "https://bues.ch/h/letmein"
repository = "https://github.com/mbuesch/letmein"
readme = "README.md"
categories = [ "authentication", "network-programming", "command-line-utilities", "cryptography" ]
keywords = [ "port-knocking", "port", "knock", "firewall", "nftables" ]

[workspace.dependencies]
anyhow = "1"
build-target = "0.4"
clap = { version = "4", default-features = false, features = [ "std", "help", "usage", "error-context", "derive" ] }
getrandom = "0.2"
hickory-resolver = "0.24"
hmac = "0.12"
libc = "0.2"
nftables = "0.5"
sd-notify = "0.4"
seccompiler = "0.4"
sha3 = "0.10"
subtle = "2"
tokio = "1"

letmein-conf = { version = "9", path = "./letmein-conf" }
letmein-fwproto = { version = "9", path = "./letmein-fwproto" }
letmein-proto = { version = "9", path = "./letmein-proto" }
letmein-seccomp = { version = "9", path = "./letmein-seccomp" }
letmein-systemd = { version = "9", path = "./letmein-systemd" }

[profile.release]
opt-level = "z"
lto = "fat"
panic = "abort"
strip = "symbols"
debug-assertions = false
overflow-checks = true
codegen-units = 1

# vim: ts=4 sw=4 expandtab
